.node-menu {
    display: none;
    position: absolute;
    top: 8px;
    right: 8px;
    text-align: right;
    z-index: 2;
    width: max-content;

    i.call-node-pin.icon-pin,
    i.call-node-pin.icon-pin-off {
        --icon-size: 24px;
        margin: 4px;
    }

    &:hover .node-menu-content {
        display: block;
    }

    &-toggle {
        display: inline-block;
        border-radius: 50%;
        font: var(--text-body1);
        background: var(--surface-black-bar);
        color: var(--text-color-high);
        cursor: pointer;

        span,
        i {
            display: block;
            float: left;
        }

        span {
            padding: 2px 0 0 0;
            font: var(--text-body1);
            color: var(--text-color-medium);
        }

        i {
            --icon-size: 32px;
            --mask-color: var(--icon-rest);
        }
    }

    &-content {
        display: none;
        padding: 7px 8px 1px 8px;
        text-align: left;
        border-radius: 12px;
        border: var(--context-menu-border);
        background: var(--surface-grey-2);
        box-shadow: var(--dropdown-shadow);
        position: absolute;
        right: 0;
        width: max-content;

        ul {
            margin: 0;
            padding: 0;
            list-style: none;

            li {
                margin: 0 0 6px 0;
                border-radius: 4px;

                button {
                    color: var(--text-color-high);
                    background: transparent;
                    border: 0 none;
                    font: var(--text-body1);
                    opacity: 0.7;
                    cursor: pointer;

                    &:hover:not(.disabled) {
                        opacity: 1;
                    }

                    &.disabled {
                        opacity: 0.4;
                    }

                    i {
                        display: block;
                        float: left;
                        margin: 4px 0 0 0;
                        --icon-size: 18px;
                        --mask-color: var(--icon-rest);
                    }

                    span {
                        display: block;
                        float: left;
                        padding: 3px 0 0 6px;
                        vertical-align: middle;
                    }
                }
            }
        }
    }
}
